﻿$(document).ready(function () {

    comprobarLogIn();

    for (var i = 0; i <= 5; i++) {
        $('#ddlRatingBusquedaDesde').append(
                        $('<option></option>').val(i).html(i)
                    );
        $('#ddlRatingBusquedaHasta').append(
                        $('<option></option>').val(i).html(i)
                    );
    }

    if (querystring("pd") == '')
        $('#ddlRatingBusquedaDesde').val(0);
    else
        $('#ddlRatingBusquedaDesde').val(parseInt(querystring("pd")));

    if (querystring("ph") == '')
        $('#ddlRatingBusquedaHasta').val(5);
    else
        $('#ddlRatingBusquedaHasta').val(parseInt(querystring("ph")));

    $("#ddlRatingBusquedaDesde").change(function () {
        window.location.href = redireccionarBusqueda('pd', $("#ddlRatingBusquedaDesde").val());
    });

    $("#ddlRatingBusquedaHasta").change(function () {
        window.location.href = redireccionarBusqueda('ph', $("#ddlRatingBusquedaHasta").val());
    });

    //Solo actualizamos barra acumuladora si estamos en pagina de busqueda//
    if (window.location.href.lastIndexOf("Busqueda.aspx") != -1)
        actualizarBarraAcumuladora();

    $(".itemsBusqueda").click(function (event) {
        event.preventDefault();
        window.location.href = redireccionarBusqueda('item', $(this).html().substring(0, $(this).html().length - 1));
    });

    $(function () {
        $("#buscar").autocomplete({
            source: function (request, response) {
                var data = "{ 'titulo': '" + request.term + "' }";
                var datos = llamarServicio("POST", "/Servicios/servicio.asmx/BusquedaItemAutocomplete", data, false, "application/json; charset=utf-8", "json");

                response($.map(datos, function (item) {
                    return {
                        label: item.Titulo + " - (" + item.TipoItem + "s )",
                        value: item.Titulo
                    }
                }));

            },
            minLength: 2,
            select: function (event, ui) {
            }

        });
    });

    $("#buscar").keypress(function (event) {
        if (event.which == 13) {
            event.preventDefault();
            $("#busquedaGeneral").click();
        }
    });

    $("#busquedaGeneral").click(function (event) {
        if ($("#buscar").val() != "") {
            window.location.href = redireccionarBusqueda('valor', $("#buscar").val());
        }
    });

    //Funcion para armar el paginador//
    armarPaginador();

    $("#pagPrev").click(function (event) {
        if (parseInt($("input[name*='CurrentPage']").val()) > 1) {
            $("input[name*='CurrentPage']").val(parseInt($("input[name*='CurrentPage']").val()) - 1);

            window.location.href = "/Paginas/Busqueda.aspx?item=" + unescape(querystring("item")) + '&categoria=' + unescape(querystring("categoria")) + "&valor=" + unescape(querystring("valor")) + "&pd=" + $("#ddlRatingBusquedaDesde").val() + "&ph=" + $("#ddlRatingBusquedaHasta").val() + "&user=" + querystring("user") + "&pag=" + $("input[name*='CurrentPage']").val();
        }
    });


    $("#pagNext").click(function (event) {
        if (parseInt($("input[name*='CurrentPage']").val()) < parseInt($("input[name*='TotalSize']").val())) {
            $("input[name*='CurrentPage']").val(parseInt($("input[name*='CurrentPage']").val()) + 1);

            window.location.href = "/Paginas/Busqueda.aspx?item=" + unescape(querystring("item")) + '&categoria=' + unescape(querystring("categoria")) + "&valor=" + unescape(querystring("valor")) + "&pd=" + $("#ddlRatingBusquedaDesde").val() + "&ph=" + $("#ddlRatingBusquedaHasta").val() + "&user=" + querystring("user") + "&pag=" + $("input[name*='CurrentPage']").val();
        }
    });

});                  //fin document ready

$(window).load(function () {
    $(".puntaje").css('display', 'none');
    $(".puntaje").each(function (index) {
        $('.calificacion').eq(index).append("<div id='rateit" + index + "' class='estrellas'></div>");
        var puntaje = parseFloat($(this).text().replace(',', '.').replace(' ', ''));
        $('#rateit' + index).rateit({ max: 5, value: puntaje, readonly: true });
    });
});

function armarPaginador() {

    if ($("input[name*='TotalSize']").val() == 0) {
        $("#header").append("<span> No se encontraron resultados para el criterio de busqueda </span");
        $("input[name*='TotalSize']").val("1");
    }

    //Armado del paginador//
    var paginas = Math.ceil(parseInt($("input[name*='TotalSize']").val()) / parseInt($("input[name*='PageSize']").val()));

    if (parseInt($("input[name*='CurrentPage']").val()) <= 1)
        $("#paginacion").append('<li class=disabled><a id="pagPrev" href="#">«</a></li>');
    else
        $("#paginacion").append('<li><a id="pagPrev" href="#">«</a></li>');

    for (i = 0; i < paginas; i++) {
        if (parseInt(querystring('pag')) == (i + 1))
            $("#paginacion").append('<li class="active"><a class="paginaNumero" href="#">' + (i + 1).toString() + '</a></li>');
        else {
            $("#paginacion").append('<li><a class="paginaNumero" href="/Paginas/Busqueda.aspx?item=' + unescape(querystring("item")) + '&categoria=' + unescape(querystring("categoria")) + '&valor=' + unescape(querystring("valor")) + '&pd=' + $("#ddlRatingBusquedaDesde").val() + '&ph=' + $("#ddlRatingBusquedaHasta").val() + '&user=' + unescape(querystring("user")) + '&pag=' + (i + 1).toString() + '">' + (i + 1).toString() + '</a></li>');
        }
    }

    if (parseInt($("input[name*='CurrentPage']").val()) == paginas)
        $("#paginacion").append('<li class=disabled><a id="pagNext" href="#" >»</a></li>');
    else
        $("#paginacion").append('<li><a id="pagNext" href="#">»</a></li>');
    //Fin Armado del paginador//

}

function actualizarBarraAcumuladora() {
    $('.cajasFiltro').remove();
    $('#generosBusqueda').remove();

    if (querystring("item") != 'Todos') {

        $('#categoria' + unescape(querystring("item")) + '> a').css('font-style', 'italic').css('color', '#757575');
        $('#categoria' + unescape(querystring("item"))).append('<div id="generosBusqueda" class="categoriasBusqueda">Géneros</div>');

        if (llamarServicio("POST", "/Servicios/servicio.asmx/ComprobarSesion", "", false, "application/json; charset=utf-8", "json")) {
            var direccion = redireccionarBusqueda('user', 'True');
            $('#generosBusqueda').append('<a class="lineaAbajo generosBusqueda" href="' + direccion + '">' + 'Mis ' + unescape(querystring("item")) + 's</a>');
        }

        $(".breadcrumb").append('<div class="alert-box fade in cajasFiltro"> <button type="button" class="close cerrarFiltro filtroItem" data-dismiss="alert">×</button> <strong>' + unescape(querystring("item")) + '</strong></div>');

        generos = llamarServicio("POST", "/Servicios/servicio.asmx/ConsultarGeneros" + unescape(querystring("item")), "", false, "application/json; charset=utf-8", "json");

        $.each(generos, function (index, obj) {
            var direccion = redireccionarBusqueda('categoria', obj.Descripcion);
            $('#generosBusqueda').append('<a class="generosBusqueda" href="' + direccion + '">' + obj.Descripcion + '</a>');
        });

        if (unescape(querystring("categoria")) != 'Todos')
            $(".breadcrumb").append('<div class="alert-box fade in cajasFiltro"> <button type="button" class="close cerrarFiltro filtroCategoria" data-dismiss="alert">×</button> <strong>' + unescape(querystring("categoria")) + '</strong></div>');

        if (unescape(querystring("user")) != 'False')
            $(".breadcrumb").append('<div class="alert-box fade in cajasFiltro"> <button type="button" class="close cerrarFiltro filtroUser" data-dismiss="alert">×</button> <strong>Mis ' + unescape(querystring("item")) + 's</strong></div>');

    }

    if (unescape(querystring("pd")) != '0' || unescape(querystring("ph")) != '5')
        $(".breadcrumb").append('<div class="alert-box fade in cajasFiltro"> <button type="button" class="close cerrarFiltro filtroRating" data-dismiss="alert">×</button> <strong> Rating ' + unescape(querystring("pd")) + '-' + unescape(querystring("ph")) + '</strong></div>');


    if (unescape(querystring("valor")) != '')
        $(".breadcrumb").append('<div class="alert-box fade in cajasFiltro"> <button type="button" class="close cerrarFiltro filtroValor" data-dismiss="alert">×</button> <strong>' + unescape(querystring("valor")) + '</strong></div>');

    $(".breadcrumb").css('visibility', 'visible');

    $(".cerrarFiltro").click(function (event) {
        var direccion;

        if ($(this).attr('class').lastIndexOf('Item') != -1) {
            direccion = redireccionarBusqueda('item', 'Todos');
            direccion = direccion.substring(0, direccion.lastIndexOf('categoria=') + 10) + 'Todos' + direccion.substring(direccion.lastIndexOf('&valor'), direccion.length);

        }

        if ($(this).attr('class').lastIndexOf('Categoria') != -1)
            direccion = redireccionarBusqueda('categoria', 'Todos');

        if ($(this).attr('class').lastIndexOf('User') != -1)
            direccion = redireccionarBusqueda('user', 'False');

        if ($(this).attr('class').lastIndexOf('Valor') != -1)
            direccion = redireccionarBusqueda('valor', '');

        if ($(this).attr('class').lastIndexOf('Rating') != -1)
            direccion = redireccionarBusqueda('rating', '0');

        $(this).parent().remove();

        window.location.href = direccion;
    });

}

function redireccionarBusqueda(nomvar, val) {
    var item;
    if (nomvar != 'item') {
        if (unescape(querystring("item")) == '')
            item = 'Todos';
        else
            item = unescape(querystring("item"));
    }
    else
        item = val;

    var categoria;
    if (nomvar != 'categoria') {
        if (unescape(querystring("categoria")) == '')
            categoria = 'Todos';
        else
            categoria = unescape(querystring("categoria"));
    }
    else
        categoria = val;

    var valor;
    if (nomvar != 'valor') {
        if (unescape(querystring("valor")) == '')
            valor = '';
        else
            valor = unescape(querystring("valor"));
    }
    else
        valor = val;

    var user;
    if (nomvar != 'user') {
        if (unescape(querystring("user")) == '')
            user = 'False';
        else
            user = unescape(querystring("user"));
    }
    else
        user = val;

    var pd;
    if (nomvar != "pd")
        pd = $("#ddlRatingBusquedaDesde").val();
    else
        pd = val;

    var ph;
    if (nomvar != "ph")
        ph = $("#ddlRatingBusquedaHasta").val();
    else
        ph = val;

    if (nomvar == "rating") {
        pd = 0;
        ph = 5;
    }



    var direccion = "/Paginas/Busqueda.aspx?item=" + item + "&categoria=" + categoria + "&valor=" + valor + "&pd=" + pd + "&ph=" + ph + "&user=" + user + "&pag=1";

    return direccion;
}